Method and apparatus for variable accuracy inter-picture timing specification for digital video encoding

ABSTRACT

A method and apparatus for variable accuracy inter-picture timing specification for digital video encoding is disclosed. Specifically, the present invention discloses a system that allows the relative timing of nearby video pictures to be encoded in a very efficient manner. In one embodiment, the display time difference between a current video picture and a nearby video picture is determined. The display time difference is then encoded into a digital representation of the video picture. In a preferred embodiment, the nearby video picture is the most recently transmitted stored picture. For coding efficiency, the display time difference may be encoded using a variable length coding system or arithmetic coding. In an alternate embodiment, the display time difference is encoded as a power of two to reduce the number of bits transmitted.

FIELD OF THE INVENTION

[0001] The present invention relates to the field of multimediacompression systems. In particular the present invention disclosesmethods and systems for specifying variable accuracy inter-picturetiming.

BACKGROUND OF THE INVENTION

[0002] Digital based electronic media formats are finally on the cusp oflargely replacing analog electronic media formats. Digital compact discs(CDs) replaced analog vinyl records long ago. Analog magnetic cassettetapes are becoming increasingly rare. Second and third generationdigital audio systems such as Mini-discs and MP3 (MPEG Audio—layer 3)are now taking market share from the first generation digital audioformat of compact discs.

[0003] The video media has been slower to move to digital storage andtransmission formats than audio. This has been largely due to themassive amounts of digital information required to accurately representvideo in digital form. The massive amounts of digital information neededto accurately represent video require very high-capacity digital storagesystems and high-bandwidth transmission systems.

[0004] However, video is now rapidly moving to digital storage andtransmission formats. Faster computer processors, high-density storagesystems, and new efficient compression and encoding algorithms havefinally made digital video practical at consumer piece points. The DVD(Digital Versatile Disc), a digital video system, has been one of thefastest selling consumer electronic products in years. DVDs have beenrapidly supplanting Video-Cassette Recorders (VCRs) as the pre-recordedvideo playback system of choice due to their high video quality, veryhigh audio quality, convenience, and extra features. The antiquatedanalog NTSC (National Television Standards Committee) video transmissionsystem is currently in the process of being replaced with the digitalATSC (Advanced Television Standards Committee) video transmissionsystem.

[0005] Computer systems have been using various different digital videoencoding formats for a number of years. Among the best digital videocompression and encoding systems used by computer systems have been thedigital video systems backed by the Motion Pictures Expert Groupcommonly known by the acronym MPEG. The three most well known and highlyused digital video formats from MPEG are known simply as MPEG-1, MPEG-2,and MPEG-4. VideoCDs (VCDs) and early consumer-grade digital videoediting systems use the early MPEG-1 digital video encoding format.Digital Versatile Discs (DVDs) and the Dish Network brand DirectBroadcast Satellite (DBS) television broadcast system use the higherquality MPEG-2 digital video compression and encoding system. The MPEG-4encoding system is rapidly being adapted by the latest computer baseddigital video encoders and associated digital video players.

[0006] The MPEG-2 and MPEG-4 standards compress a series of video framesor video fields and then encode the compressed frames or fields into adigital bitstream. When encoding a video frame or field with the MPEG-2and MPEG-4 systems, the video frame or field is divided into arectangular grid of macroblocks. Each macroblock is independentlycompressed and encoded.

[0007] When compressing a video frame or field, the MPEG-4 standard maycompress the frame or field into one of three types of compressed framesor fields: Intra-frames (I-frames), Unidirectional Predicted frames(P-frames), or Bi-Directional Predicted frames (B-frames). Intra-framescompletely independently encode an independent video frame with noreference to other video frames. P-frames define a video frame withreference to a single previously displayed video frame. B-frames definea video frame with reference to both a video frame displayed before thecurrent frame and a video frame to be displayed after the current frame.Due to their efficient usage of redundant video information, P-framesand B-frames generally provide the best compression.

SUMMARY OF THE INVENTION

[0008] A method and apparatus for variable accuracy inter-picture timingspecification for digital video encoding is disclosed. Specifically, thepresent invention discloses a system that allows the relative timing ofnearby video pictures to be encoded in a very efficient manner. In oneembodiment, the display time difference between a current video pictureand a nearby video picture is determined. The display time difference isthen encoded into a digital representation of the video picture. In apreferred embodiment, the nearby video picture is the most recentlytransmitted stored picture.

[0009] For coding efficiency, the display time difference may be encodedusing a variable length coding system or arithmetic coding. In analternate embodiment, the display time difference is encoded as a powerof two to reduce the number of bits transmitted.

[0010] Other objects, features, and advantages of present invention willbe apparent from the company drawings and from the following detaileddescription.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The objects, features, and advantages of the present inventionwill be apparent to one skilled in the art, in view of the followingdetailed description in which:

[0012]FIG. 1 illustrates a high-level block diagram of one possible adigital video encoder system.

[0013]FIG. 2 illustrates a serious of video pictures in the order thatthe pictures should be displayed wherein the arrows connecting differentpictures indicate inter-picture dependency created using motioncompensation.

[0014]FIG. 3 illustrates the video pictures from FIG. 2 listed in apreferred transmission order of pictures wherein the arrows connectingdifferent pictures indicate inter-picture dependency created usingmotion compensation.

[0015]FIG. 4 graphically illustrates a series of video pictures whereinthe distances between video pictures that reference each other arechosen to be powers of two.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0016] A method and system for specifying Variable AccuracyInter-Picture Timing in a multimedia compression and encoding system isdisclosed. In the following description, for purposes of explanation,specific nomenclature is set forth to provide a thorough understandingof the present invention. However, it will be apparent to one skilled inthe art that these specific details are not required in order topractice the present invention. For example, the present invention hasbeen described with reference to the MPEG-4 multimedia compression andencoding system. However, the same techniques can easily be applied toother types of compression and encoding systems.

Multimedia Compression and Encoding Overview

[0017]FIG. 1 illustrates a high-level block diagram of a typical digitalvideo encoder 100 as is well known in the art. The digital video encoder100 receives an incoming video stream of video frames 105 at the left ofthe block diagram. Each video frame is processed by a Discrete CosineTransformation (DCT) unit 110. The frame may be processed independently(an intra-frame) or with reference to information from other framesreceived from the motion compensation unit (an inter-frame). Next, aQuantizer (Q) unit 120 quantizes the information from the DiscreteCosine Transformation unit 110. Finally, the quantized video frame isthen encoded with an entropy encoder (H) unit 180 to produce an encodedbitstream. The entropy encoder (H) unit 180 may use a variable lengthcoding (VLC) system.

[0018] Since an inter-frame encoded video frame is defined withreference to other nearby video frames, the digital video encoder 100needs to create a copy of how decoded each frame will appear within adigital video decoder such that inter-frames may be encoded. Thus, thelower portion of the digital video encoder 100 is actually a digitalvideo decoder system. Specifically, an inverse quantizer (Q⁻¹) unit 130reverses the quantization of the video frame information and an inverseDiscrete Cosine Transformation (DCT⁻¹) unit 140 reverses the DiscreteCosine Transformation of the video frame information. After all the DCTcoefficients are reconstructed from iDCT, the motion compensation unitwill use the information, along with the motion vectors, to reconstructthe encoded frame which is then used as the reference frame for themotion estimation of the next frame.

[0019] The decoded video frame may then be used to encode inter-frames(P-frames or B-frames) that are defined relative to information in thedecoded video frame. Specifically, a motion compensation (MC) unit 150and a motion estimation (ME) unit 160 are used to determine motionvectors and generate differential values used to encode inter-frames.

[0020] A rate controller 190 receives information from many differentcomponents in a digital video encoder 100 and uses the information toallocate a bit budget for each video frame. The rate controller 190should allocate the bit budget in a manner that will generate thehighest quality digital video bit stream that that complies with aspecified set of restrictions. Specifically, the rate controller 190attempts to generate the highest quality compressed video stream withoutoverflowing buffers (exceeding the amount of available memory in adecoder by sending more information than can be stored) or underflowingbuffers (not sending video frames fast enough such that a decoder runsout of video frames to display).

Multimedia Compression and Encoding Overview

[0021] In some video signals the time between successive video pictures(frames or fields) may not be constant. (Note: This document will usethe term video pictures to generically refer to video frames or videofields.) For example, some video pictures may be dropped because oftransmission bandwidth constraints. Furthermore, the video timing mayalso vary due to camera inregularity or special effects such as slowmotion or fast motion. In some video streams, the original video sourcemay simply have non-uniform inter-picture times by design. For example,synthesized video such as computer graphic animations may havenon-uniform timing since no arbitrary video timing is created by auniform video capture system such as a video camera system. A flexibledigital video encoding system should be able to handle non-uniformtiming.

[0022] Many digital video encoding systems divide video pictures into arectangular grid of macroblocks. Each individual macroblock from thevideo picture is independently compressed and encoded. In someembodiments, sub-blocks of macroblocks known as ‘pixelblocks’ are used.Such pixel blocks may have their own motion vectors that may beinterpolated. This document will refer to macroblocks although theteachings of the present invention may be applied equally to bothmacroblocks and pixelblocks.

[0023] Some video coding standards, e.g., ISO MPEG standards or the ITUH.264 standard, use different types of predicted macroblocks to encodevideo pictures. In one scenario, a macroblock may be one of three types:

[0024] 1. I-macroblock—An Intra (I) macroblock uses no information fromany other video pictures in its coding (it is completely self-defined);

[0025] 2. P-macroblock—A unidirectionally predicted (P) macroblockrefers to picture information from one preceding video picture; or

[0026] 3. B-macroblock—A bi-directional predicted (B) macroblock usesinformation from one preceding picture and one future video picture.

[0027] If all the macroblocks in a video picture are Intra-macroblocks,then the video picture is an Intra-frame. If a video picture onlyincludes unidirectional predicted macro blocks or intra-macroblocks,then the video picture is known as a P-frame. If the video picturecontains any bi-directional predicted macroblocks, then the videopicture is known as a B-frame. For the simplicity, this document willconsider the case where all macroblocks within a given picture are ofthe same type.

[0028] An example sequence of video pictures to be encoded might berepresented as

[0029] I₁ B₂ B₃ B₄ P₅ B₆ B₇ B₈ B₉ P₁₀ B₁₁ P₁₂ B₁₃ I₁₄ . . .

[0030] where the letter (I, P, or B) represents if the video picture isan I-frame, P-frame, or B-frame and the number represents the cameraorder of the video picture in the sequence of video pictures. The cameraorder is the order in which a camera recorded the video pictures andthus is also the order in which the video pictures should be displayed(the display order).

[0031] The previous example series of video pictures is graphicallyillustrated in FIG. 2. Referring to FIG. 2, the arrows indicate thatmacroblocks from a stored picture (I-frame or P-frame in this case) areused in the motion compensated prediction of other pictures.

[0032] In the scenario of FIG. 2, no information from other pictures isused in the encoding of the intra-frame video picture I₁. Video pictureP₅ is a P-frame that uses video information from previous video pictureI₁ in its coding such that an arrow is drawn from video picture I₁ tovideo picture P₅. Video picture B₂, video picture B₃, video picture B₄all use information from both video picture I₁ and video picture P₅ intheir coding such that arrows are drawn from video picture I₁ and videopicture P₅ to video picture B₂, video picture B₃, and video picture B₄.As stated above the inter-picture times are, in general, not the same.

[0033] Since B-pictures use information from future pictures (picturesthat will be displayed later), the transmission order is usuallydifferent than the display order. Specifically, video pictures that areneeded to construct other video pictures should be transmitted first.For the above sequence, the transmission order might be

[0034] I₁ P₅ B₂ B₃ B₄ P₁₀ B₆ B₇ B₈ B₉ P₁₂ B₁₁ I₁₄ B₁₃ . . .

[0035]FIG. 3 graphically illustrates the above transmission order of thevideo pictures from FIG. 2. Again, the arrows in the figure indicatethat macroblocks from a stored video picture (I or P in this case) areused in the motion compensated prediction of other video pictures.

[0036] Referring to FIG. 3, the system first transmits I-frame I₁ whichdoes not depend on any other frame. Next, the system transmits P-framevideo picture P₅ that depends upon video picture I₁. Next, the systemtransmits B-frame video picture B₂ after video picture P₅ even thoughvideo picture B₂ will be displayed before video picture P₅. The reasonfor this is that when it comes time to decode B₂, the decoder will havealready received and stored the information in video pictures I₁ and P₅necessary to decode video picture B₂. Similarly, video pictures I₁ andP₅ are ready to be used to decode subsequent video picture B₃ and videopicture B₄. The receiver/decoder reorders the video picture sequence forproper display. In this operation I and P pictures are often referred toas stored pictures.

[0037] The coding of the P-frame pictures typically utilizes MotionCompensation, wherein a Motion Vector is computed for each macroblock inthe picture. Using the computed motion vector, a prediction macroblock(P-macroblock) can be formed by translation of pixels in theaforementioned previous picture. The difference between the actualmacroblock in the P-frame picture and the prediction macroblock is thencoded for transmission.

[0038] Each motion vector may also be transmitted via predictive coding.For example, a motion vector prediction may be formed using nearbymotion vectors. In such a case, then the difference between the actualmotion vector and the motion vector prediction is coded fortransmission.

[0039] Each B-macroblock uses two motion vectors: a first motion vectorreferencing the aforementioned previous video picture and a secondmotion vector referencing the future video picture. From these twomotion vectors, two prediction macroblocks are computed. The twopredicted macroblocks are then combined together, using some function,to form a final predicted macroblock. As above, the difference betweenthe actual macroblock in the B-frame picture and the final predictedmacroblock is then encoded for transmission.

[0040] As with P-macroblocks, each motion vector (MV) of a B-macroblockmay be transmitted via predictive coding. Specifically, a predictedmotion vector is formed using nearby motion vectors. Then, thedifference between the actual motion vector and the predicted is codedfor transmission.

[0041] However, with B-macroblocks the opportunity exists forinterpolating motion vectors from motion vectors in the nearest storedpicture macroblock. Such interpolation is carried out both in thedigital video encoder and the digital video decoder.

[0042] This motion vector interpolation works particularly well on videopictures from a video sequence where a camera is slowly panning across astationary background. In fact, such motion vector interpolation may begood enough to be used alone. Specifically, this means that nodifferential information needs be calculated or transmitted for theseB-macroblock motion vectors encoded using interpolation.

[0043] To illustrate further, in the above scenario let us represent theinter-picture display time between pictures i and j as D_(i,j), i.e., ifthe display times of the pictures are T_(i) and T_(j), respectively,then

D _(i,j) =T _(i) −T _(j)

[0044] from which it follows that

D _(i,k) =D _(i,j) +D _(j,k)

D _(i,k) =−D _(k,i)

[0045] Note that D_(i,j) may be negative in some cases.

[0046] Thus, if MV_(5,1) is a motion vector for a P₅ macroblock asreferenced to I₁, then for the corresponding macroblocks in B₂, B₃ andB₄ the motion vectors as referenced to I₁ and P₅, respectively, would beinterpolated by

MV _(2,1) =MV _(5,1) *D _(2,1) /D _(5,1)

MV _(5,2) =MV _(5,1) *D _(5,2) /D _(5,1)

MV _(3,1) =MV _(5,1) *D _(3,1) /D _(5,1)

MV _(5,3) =MV _(5,1) *D _(5,3) /D _(5,1)

MV _(4,1) =MV _(5,1) *D _(4,1) /D _(5,1)

MV _(5,4) =MV _(5,1) *D _(5,4) /D _(5,1)

[0047] Note that since ratios of display times are used for motionvector prediction, absolute display times are not needed. Thus, relativedisplay times may be used for D_(i,j) display time values.

[0048] This scenario may be generalized, as for example in the H.264standard. In the generalization, a P or B picture may use any previouslytransmitted picture for its motion vector prediction. Thus, in the abovecase picture B₃ may use picture I₁ and picture B₂ in its prediction.Moreover, motion vectors may be extrapolated, not just interpolated.Thus, in this case we would have:

MV _(3,1) =MV _(2,1) *D _(3,1) /D _(2,1)

[0049] Such motion vector extrapolation (or interpolation) may also beused in the prediction process for predictive coding of motion vectors.

[0050] In any event, the problem in the case of non-uniforminter-picture times is to transmit the relative display time values ofD_(i,j) to the receiver, and that is the subject of the presentinvention. In one embodiment of the present invention, for each pictureafter the first picture we transmit the display time difference betweenthe current picture and the most recently transmitted stored picture.For error resilience, the transmission could be repeated several timeswithin the picture, e.g., in the so-called slice headers of the MPEG orH.264 standards. If all slice headers are lost, then presumably otherpictures that rely on the lost picture for decoding information cannotbe decoded either.

[0051] Thus, in the above scenario we would transmit the following:

[0052] D_(5,1) D_(2,5) D_(3,5) D_(4,5) D_(10,5) D_(6,10) D_(7,10)D_(8,10) D_(9,10) D_(12,10) D_(11,12) D_(14,12) D_(13,14) . . .

[0053] For the purpose of motion vector estimation, the accuracyrequirements for D_(i,j) may vary from picture to picture. For example,if there is only a single B-frame picture B₆ halfway between two P-framepictures P₅ and P₇, then it suffices to send only:

D _(7,5)=2 and D _(6,7)=−1

[0054] Where the D_(i,j) display time values are relative time values.If, instead, video picture B₆ is only one quarter the distance betweenvideo picture P₅ and video picture P₇ then the appropriate D_(i,j)display time values to send would be:

D _(7,5)=4 and D _(6,7)=−1

[0055] Note that in both of the two preceding examples, the display timebetween the video picture B₆ and video picture video picture P₇ is beingused as the display time “unit” and the display time difference betweenvideo picture P₅ and picture video picture P₇ is four display time“units”.

[0056] In general, motion vector estimation is less complex if divisorsare powers of two. This is easily achieved in our embodiment if D_(i,j)(the inter-picture time) between two stored pictures is chosen to be apower of two as graphically illustrated in FIG. 4. Alternatively, theestimation procedure could be defined to truncate or round all divisorsto a power of two.

[0057] In the case where an inter-picture time is to be a power of two,the number of data bits can be reduced if only the integer power (oftwo) is transmitted instead of the full value of the inter-picture time.FIG. 4 graphically illustrates a case wherein the distances betweenpictures are chosen to be powers of two. In such a case, the D_(3,1)display time value of 2 between video picture P₁ and picture videopicture P₃ is transmitted as 1 (since 2¹=2) and the D_(7,3) display timevalue of 4 between video picture P₇ and picture video picture P₃ can betransmitted as 2 (since 2²=4).

[0058] In some cases, motion vector interpolation may not be used.However, it is still necessary to transmit the display order of thevideo pictures to the receiver/player system such that thereceiver/player system will display the video pictures in the properorder. In this case, simple signed integer values for D_(i,j) sufficeirrespective of the actual display times. In some applications only thesign may be needed.

[0059] The inter-picture times D_(i,j) may simply be transmitted assimple signed integer values. However, many methods may be used forencoding the D_(i,j) values to achieve additional compression. Forexample, a sign bit followed by a variable length coded magnitude isrelatively easy to implement and provides coding efficiency.

[0060] One such variable length coding system that may be used is knownas UVLC (Universal Variable Length Code). The UVLC variable lengthcoding system is given by the code words: 1 =       1 2 =     0 1 0 3 =    0 1 1 4 =   0 0 1 0 0 5 =   0 0 1 0 1 6 =   0 0 1 1 0 7 =   0 0 1 11 8 = 0 0 0 1 0 0 0 . . .

[0061] Another method of encoding the inter-picture times may be to usearithmetic coding. Typically, arithmetic coding utilizes conditionalprobabilities to effect a very high compression of the data bits.

[0062] Thus, the present invention introduces a simple but powerfulmethod of encoding and transmitting inter-picture display times. Theencoding of inter-picture display times can be made very efficient byusing variable length coding or arithmetic coding. Furthermore, adesired accuracy can be chosen to meet the needs of the video decoder,but no more.

[0063] The foregoing has described a system for specifying variableaccuracy inter-picture timing in a multimedia compression and encodingsystem. It is contemplated that changes and modifications may be made byone of ordinary skill in the art, to the materials and arrangements ofelements of the present invention without departing from the scope ofthe invention.

1-20 (cancel)
 21. A method of specifying digital video information, saidmethod comprising: determining a picture order value between a firstvideo picture and a second video picture, said picture order valuecomprising an integer value; and encoding said picture order value intoa digital video bitstream.
 22. The method of specifying digital videoinformation as claimed in claim 21 wherein said first video picturecomprises a most recently transmitted stored picture.
 23. The method ofspecifying digital video information as claimed in claim 21 wherein saidfirst picture order value is encoded into a slice header of a digitallyencoded video picture.
 24. The method of specifying digital videoinformation as claimed in claim 21 wherein said picture order value isencoded more than once in said digital video bitstream.
 25. The methodof specifying digital video information as claimed in claim 21 whereinsaid picture order value is proportional to a display time differencebetween said first video picture and said second video picture.
 26. Themethod of specifying digital video information as claimed in claim 21wherein said picture order value is encoded as a power of two.
 27. Themethod of specifying digital video information as claimed in claim 21wherein said picture order value is encoded in said digital videobitstream using variable length coding.
 28. The method of specifyingdigital video information as claimed in claim 21 wherein said pictureorder value is encoded with arithmetic coding.
 29. The method ofspecifying digital video information as claimed in claim 21 wherein saidpicture order value comprises a signed integer.
 30. The method ofspecifying digital video information as claimed in claim 21 whereinpicture order value is expressed as a display time unit.
 31. The methodof specifying digital video information as claimed in claim 21 whereinpicture order value specifies a display order.
 32. A readable digitalmedium containing an encoded digital video bitstream, said encodeddigital video bitstream comprising: a digitally encoding of a firstvideo picture; and a first picture order value, said first picture ordervalue relating said first video picture to a nearby video picture. 33.The readable digital medium containing an encoded digital videobitstream as claimed in claim 32 wherein said nearby video picturecomprises a most recently transmitted stored picture.
 34. The readabledigital medium containing an encoded digital video bitstream as claimedin claim 32 wherein said most recently transmitted stored picturecomprises a picture that is required to decode other video pictures. 35.The readable digital medium containing an encoded digital videobitstream as claimed in claim 32 wherein said first picture order valueis encoded into a slice header of said digitally encoding of said firstvideo picture.
 36. The readable digital medium containing an encodeddigital video bitstream as claimed in claim 32 wherein said firstpicture order value is encoded more than once in said first digitalvideo picture.
 37. The readable digital medium containing an encodeddigital video bitstream as claimed in claim 32 wherein said firstpicture order value comprises a relative time value.
 38. The readabledigital medium containing an encoded digital video bitstream as claimedin claim 32 wherein said first picture order value is encoded as a powerof two.
 39. The readable digital medium containing an encoded digitalvideo bitstream as claimed in claim 32 wherein said first picture ordervalue is encoded with a variable length coding.
 40. The readable digitalmedium containing an encoded digital video bitstream as claimed in claim32 wherein said picture order value is encoded with arithmetic coding.41. The readable digital medium containing an encoded digital videobitstream as claimed in claim 32 wherein said picture order valuecomprises a signed integer.
 42. The readable digital medium containingan encoded digital video bitstream as claimed in claim 32 wherein saidpicture order value specifies a display order.
 43. A method of decodingdigital video information, said method comprising: receiving a digitalvideo bitstream, digital video bitstream including a first videopicture; decoding a picture order value relating said first videopicture to a nearby video picture; and calculating a motion vector usingsaid picture order value.
 44. The method of decoding digital videoinformation as claimed in claim 43 wherein calculating a motion vectorusing said picture order value comprises interpolating said motionvector.
 45. The method of decoding digital video information as claimedin claim 43 wherein said nearby video picture comprises a most recentlytransmitted stored picture.
 46. The method of decoding digital videoinformation as claimed in claim 43 wherein said picture order value isencoded into a slice header of said video picture.
 47. The method ofdecoding digital video information as claimed in claim 43 wherein saidpicture order value is encoded more than once in said first videopicture.
 48. The method of decoding digital video information as claimedin claim 43 wherein said picture order value comprises a relative timevalue.
 49. The method of decoding digital video information as claimedin claim 43 wherein said picture order value is encoded as a power oftwo.
 50. The method of decoding digital video information as claimed inclaim 43 wherein said picture order value is decoded from said digitalvideo bitstream using variable length coding.
 51. The method of decodingdigital video information as claimed in claim 43 wherein said pictureorder value is decoded from said using arithmetic coding.
 52. The methodof decoding digital video information as claimed in claim 43 whereinsaid picture order value comprises a signed integer.
 53. The method ofdecoding digital video information as claimed in claim 43 whereincalculating said motion vector comprises: determining a first displayorder difference between a first video picture and a second videopicture; determining a second display order difference between a thirdvideo picture and said second video picture; and interpolating a motionvector for said third video picture by multiplying a ratio of saidsecond display order difference to said first display order differenceby a motion vector from said second video picture.
 54. A method ofgenerating a motion vector, said method comprising: determining a firstdisplay order difference between a first video picture and a secondvideo picture; determining a second display order difference between athird video picture and said second video picture; and calculating amotion vector for said third video picture by multiplying a ratio ofsaid second display order difference to said first display orderdifference by a motion vector from said second video picture.
 55. Themethod of generating a motion vector as claimed in claim 54 whereincalculating a motion vector for said third video picture using saidcomprises an interpolation.
 56. The method of generating a motion vectoras claimed in claim 54 wherein said second video picture comprises amost recently transmitted stored picture to said third video picture.57. The method of generating a motion vector as claimed in claim 54wherein said first display order difference is encoded into a sliceheader of said first video picture.
 58. The method of generating amotion vector as claimed in claim 54 wherein said first display orderdifference is encoded more than once in said first video picture. 59.The method of generating a motion vector as claimed in claim 54 whereinsaid first display order difference comprises a relative picture countvalue.
 60. The method of generating a motion vector as claimed in claim54 wherein said first display time difference is encoded as a power oftwo.
 61. The method of generating a motion vector as claimed in claim 54wherein said first display order difference is decoded using variablelength coding.
 62. The method of generating a motion vector as claimedin claim 54 wherein said first display order difference is decoded fromwith arithmetic coding.
 63. The method of generating a motion vector asclaimed in claim 54 wherein said first display time difference comprisesa signed integer.
 64. The method of generating a motion vector asclaimed in claim 54 wherein said first display time difference comprisesa relative time value.
 65. The method of generating a motion vector asclaimed in claim 54 wherein said first display time difference comprisesa picture order count.
 66. A digital bitstream of digital videoinformation, said digital bitstream comprising: a first video pictureencoded into said digital bitstream; a video picture encoded into saiddigital bitstream; and a picture order value specifying an orderrelationship between said second video picture and said first videopicture.
 67. The digital bitstream of digital video information asclaimed in claim 66 wherein said first video picture comprises a mostrecently transmitted stored picture relative to said first videopicture.
 68. The digital bitstream of digital video information asclaimed in claim 66 wherein said picture order value is encoded into aslice header of said second video picture.
 69. The digital bitstream ofdigital video information as claimed in claim 66 wherein said pictureorder value is encoded more than once in said digital bitstream.
 70. Thedigital bitstream of digital video information as claimed in claim 66wherein said picture order value is proportional to a display timedifference between said first video picture and said second videopicture.
 71. The digital bitstream of digital video information asclaimed in claim 66 wherein said picture order value is encoded as apower of two.
 72. The digital bitstream of digital video information asclaimed in claim 66 wherein said picture order value is encoded in saiddigital bitstream using variable length coding.
 73. The digitalbitstream of digital video information as claimed in claim 66 whereinsaid picture order value is encoded with arithmetic coding.
 74. Thedigital bitstream of digital video information as claimed in claim 66wherein said picture order value comprises a signed integer.
 75. Thedigital bitstream of digital video information as claimed in claim 66wherein picture order value is expressed as a display time unit.
 76. Thedigital bitstream of digital video information as claimed in claim 66wherein said picture order value comprises a relative time value. 77.The digital bitstream of digital video information as claimed in claim66 wherein said picture order value defines a display order.